package com.pandora.templating;

public abstract class Template<T> {
	
	private T instance;
	
	public final T getInstance() {
		if (this.instance == null) {
			this.instance = createInstance();
		}
		return this.instance;
	}
	
	public final void setInstance(T instance) {
		this.instance = instance;
	}

	
	protected abstract T createInstance(); 

}
